package com.algorithm2;

import java.util.Arrays;

public interface InsertionSort2 {

    public static void main(String[] args){
        int[] array = new int[]{1,3,5,7,9,0,2,4,6,8,10,1,3,5,7,9};
        sort(array);
        System.out.println("result:"+ Arrays.toString(array));
    }

    /**
     *
     * @param array
     */
    public static void sort(int[] array){
        //总共需要遍历的次数
        for(int i=0;i<array.length-1;i++){
            //从i后的数字开始
            int j = i+1;
            //将j先存
            int temp = array[j];
            //将temp和j之前的数字一一比较，若前面的数字有大的，则插入，插入的技巧:移位
            while(j>0&&array[j-1]>temp){//
                array[j] = array[j-1];
                j--;
            }
            array[j] = temp;
            System.out.println("第"+i+"个数据,array:"+Arrays.toString(array));
        }

    }

    public static void swap(int[] array,int i,int j){
        int temp = array[i];
        array[i] = array[j];
        array[j] = temp;
    }
}
